Narativno uokvirivanje u hrvatskim katoličkim web medijima: Komparativna analiza (2021.–2024.)

Radna verzija za časopis

Author

Media Analysis Research

Published

February 10, 2026

Sažetak

Mediji ne samo prenose informacije nego ih aktivno uokviruju, birajući koje aspekte stvarnosti naglasiti a koje izostaviti. Ovaj rad istražuje kako hrvatski katolički web mediji uokviruju javni diskurs u usporedbi s ostalim tipovima medija u razdoblju od 2021. do 2024. godine. Koristeći rječničku metodu analize sadržaja na korpusu od 443,138 web članaka, identificiramo osam narativnih okvira i analiziramo njihovu distribuciju, supojavljivanje i vremensku dinamiku. Rezultati logističke regresije pokazuju da tip medija sistematski predviđa uporabu specifičnih okvira i nakon kontrole za vremensko razdoblje i duljinu teksta. Unutar katoličkog medijskog prostora utvrđujemo značajne razlike između službenih crkvenih glasila i katolički orijentiranih portala, pri čemu potonji značajno češće koriste okvire institucionalnog nepovjerenja, zavjere i medijske kritike. Nalazi upućuju na to da katolički medijski prostor nije monolitan nego sadrži narativno raznolike aktere čije se strategije uokvirivanja kvalitativno razlikuju.

1 Uvod

Medijski okviri (frames) su organizacijski principi koji strukturiraju značenje javnog diskursa (Entman 1993). Kada novinar ili uredništvo bira što uključiti u priču, koje aspekte naglasiti i koji kontekst ponuditi čitatelju, oni ne vrše neutralan prijenos informacija nego aktivno konstruiraju interpretativni okvir kroz koji će publika razumjeti događaj (Scheufele 1999; Gamson and Modigliani 1989). Istraživanje medijskog uokvirivanja ima dugu tradiciju u komunikologiji, ali njegova primjena na religijske medije ostaje nedovoljno istražena, osobito u malim europskim medijskim sustavima poput hrvatskog.

Hrvatski medijski prostor pruža osobito zanimljiv kontekst za studiju narativnog uokvirivanja iz nekoliko razloga. Prvo, katolička crkva ima specifičan položaj u hrvatskom društvu koji se odražava i u razgranatom medijskom ekosustavu koji obuhvaća službena glasila (IKA, Glas Koncila), specijalizirane portale (bitno.net, katolicki.hr) i ideološki bliske portale koji nisu formalno vezani uz crkvenu hijerarhiju (narod.hr, dnevno.hr). Drugo, razdoblje od 2021. do 2024. obilježeno je nizom spornih tema (pandemija, cijepljenje, Istanbulska konvencija, migracijska kriza, pristupanje eurozoni, rat u Ukrajini) koje su mobilizirale različite narativne strategije u javnom diskursu. Treće, Hrvatska kao postkomunistička i pretežno katolička EU članica nalazi se na sjecištu zapadnoeuropskih liberalnih normi i tradicionalističkih vrijednosnih orijentacija, što stvara plodno tlo za narativne sukobe.

Teorija uokvirivanja (Entman 1993) definira uokvirivanje kao proces selekcije i naglašavanja u kojem se određeni aspekti percipirane stvarnosti čine istaknutijima u komunikacijskom tekstu kako bi se promovirala određena definicija problema, kauzalna interpretacija, moralna evaluacija ili preporuka za postupanje. Gamson and Modigliani (1989) proširuju ovaj koncept pokazujući da se medijski okviri ne pojavljuju izolirano nego u obliku “interpretativnih paketa” (interpretive packages) koji povezuju više elemenata u koherentnu narativnu strukturu. Ova perspektiva je osobito relevantna za naše istraživanje jer sugerira da katolički mediji ne koriste pojedinačne okvire nego ih kombiniraju u prepoznatljive narativne konfiguracije.

Suvremena istraživanja dezinformacija dodatno naglašavaju važnost narativnog uokvirivanja. Wardle and Derakhshan (2017) razlikuju dezinformaciju (namjerno kreiran lažan sadržaj), misinformaciju (nenamjerno širenje netočnih informacija) i mal-informaciju (namjerno korištenje istinitih informacija za nanošenje štete). Za naše istraživanje ključan je uvid da strukturna obilježja dezinformacijskih narativa, poput konspirativnih okvira, konstrukcije vanjskih prijetnji i institucionalnog nepovjerenja, mogu biti prisutna i u sadržaju koji nije nužno netočan (Bastos and Tuters 2023). Drugim riječima, narativna struktura može sličiti dezinformacijskom ekosustavu čak i kada su činjenične tvrdnje točne.

Istraživanje je vođeno trima istraživačkim pitanjima.

IP1: Distribucija i razlike. Kako se distribucija narativnih okvira razlikuje između katoličkih i ostalih tipova medija, i koje su te razlike statistički značajne nakon kontrole za relevantne kovarijate?

IP2: Narativni paketi. Postoje li prepoznatljive konfiguracije okvira (narativni paketi) koje katolički mediji koriste češće od ostalih, i kako su ti paketi strukturirani?

IP3: Unutarnja raznolikost. U kojoj se mjeri razlikuju narativne strategije službenih crkvenih medija i katolički orijentiranih portala, i kako se te razlike manifestiraju kroz vrijeme?

2 Podaci i metode

2.1 Korpus

Analiza se temelji na podatcima prikupljenima putem Determ platforme (ranije Mediatoolkit), koja sustavno prati javno dostupan digitalni medijski sadržaj u Hrvatskoj. Izvorno prikupljen korpus sadrži približno 25 milijuna zapisa iz razdoblja od siječnja 2021. do svibnja 2024., raspoređenih na web portale, društvene mreže, video platforme i forume.

Za ovu analizu koristimo podskup koji obuhvaća isključivo web članke (SOURCE_TYPE == “web”). Ovo ograničenje je motivirano dvama razlozima. Prvo, web članci predstavljaju urednički kontrolirani sadržaj koji se može pripisati konkretnom mediju, za razliku od komentara na društvenim mrežama koji odražavaju ponašanje korisnika. Drugo, narativni okviri su smislena analitička kategorija za strukturirane tekstove s naslovima i tijelom teksta, a manje za kratke objave na društvenim mrežama.

Show code
n_total <- nrow(full_corpus)
n_sources <- n_distinct(full_corpus$FROM)
n_catholic <- nrow(catholic_corpus)
date_min <- min(full_corpus$DATE)
date_max <- max(full_corpus$DATE)
median_words <- median(full_corpus$word_count, na.rm = TRUE)

summary_tbl <- tibble(
  Obilježje = c(
    "Ukupan broj članaka",
    "Jedinstvenih izvora",
    "Razdoblje",
    "Medijan broja riječi po članku",
    "Članci iz katoličkih medija",
    "Udio katoličkih medija (%)"
  ),
  Vrijednost = c(
    format(n_total, big.mark = ","),
    format(n_sources, big.mark = ","),
    paste(date_min, "do", date_max),
    format(median_words, big.mark = ","),
    format(n_catholic, big.mark = ","),
    round(n_catholic / n_total * 100, 2)
  )
)

kable(summary_tbl, caption = "Tablica 1. Opis korpusa") |>
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
Tablica 1. Opis korpusa
Obilježje Vrijednost
Ukupan broj članaka 443,138
Jedinstvenih izvora 3,170
Razdoblje 2021-01-01 do 2026-01-06
Medijan broja riječi po članku 485
Članci iz katoličkih medija 92,915
Udio katoličkih medija (%) 20.97

2.2 Klasifikacija medija

Medijske izvore klasificiramo u sedam kategorija na temelju vlasničke strukture, uredničke politike i pozicioniranja u hrvatskom medijskom prostoru. Katoličke medije dodatno raščlanjujemo na četiri potkategorije koje odražavaju različite stupnjeve institucionalne povezanosti s Crkvom.

Show code
media_dist <- full_corpus |>
  count(media_type, sort = TRUE) |>
  mutate(
    pct = round(n / sum(n) * 100, 2),
    n_sources = sapply(media_type, function(mt) {
      n_distinct(full_corpus$FROM[full_corpus$media_type == mt])
    })
  )

kable(media_dist,
      col.names = c("Tip medija", "Broj članaka", "% korpusa", "Broj izvora")) |>
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
Table 1: Tablica 2. Klasifikacija medijskih izvora
Tip medija Broj članaka % korpusa Broj izvora
Other 256216 57.82 3051
Catholic 92915 20.97 72
Liberal 28160 6.35 15
Regional 25415 5.74 6
Tabloid 20720 4.68 12
Conservative 18516 4.18 7
Business 1196 0.27 7
Show code
if (nrow(catholic_corpus) > 0) {
  cath_sub_tbl <- catholic_corpus |>
    count(catholic_subcategory, sort = TRUE) |>
    mutate(
      pct = round(n / sum(n) * 100, 2),
      n_sources = sapply(catholic_subcategory, function(cs) {
        n_distinct(catholic_corpus$FROM[catholic_corpus$catholic_subcategory == cs])
      })
    )

  kable(cath_sub_tbl,
        col.names = c("Potkategorija", "Broj članaka", "% katoličkih", "Broj izvora")) |>
    kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
}
Table 2: Tablica 3. Potkategorije katoličkih medija
Potkategorija Broj članaka % katoličkih Broj izvora
Official Church 64391 69.30 12
Catholic Aligned 18577 19.99 5
Catholic Portals 9943 10.70 54
Catholic Radio 4 0.00 1

Razlikovanje između “Official Church” (IKA, Glas Koncila) i “Catholic Aligned” (narod.hr, dnevno.hr, direktno.hr) je analitički ključno. Službeni mediji djeluju pod izravnim uredničkim nadzorom crkvene hijerarhije i njihov sadržaj odražava institucionalnu poziciju Crkve. Katolički orijentirani portali nemaju takvu institucionalnu kontrolu i slobodniji su u odabiru narativnih strategija. Hipoteza je da će se ta razlika manifestirati u različitoj uporabi okvira.

2.3 Narativni okviri

Identificiramo osam narativnih okvira metodom rječničke detekcije (dictionary based approach). Za svaki okvir konstruiramo rječnik ključnih riječi i fraza na hrvatskom jeziku. Članak aktivira okvir ako sadrži barem jednu ključnu riječ iz pripadajućeg rječnika. Jedan članak može aktivirati nula, jedan ili više okvira istovremeno.

Okviri su teorijski motivirani literaturom o medijskom uokvirivanju u kontekstu religijskog konzervativizma (Wodak 2015; Haidt 2012) i strukturnim obilježjima dezinformacijskih narativa (Wardle and Derakhshan 2017; Bastos and Tuters 2023).

Show code
frame_defs <- tibble(
  Okvir = c(
    "MORAL_DECAY", "FOREIGN_THREAT", "INSTITUTIONAL_DISTRUST",
    "TRADITIONAL_VALUES", "SOVEREIGNTY", "CONSPIRACY",
    "FAITH_DEFENCE", "MEDIA_CRITIQUE"
  ),
  Opis = c(
    "Društvo je u moralnom propadanju. Koristi koncepte dekadencije, grijeha, sekularizacije, nihilizma.",
    "Vanjska sila (EU, globalisti, Soros) nameće svoju volju. Domaći problemi proizlaze iz stranog uplitanja.",
    "Institucije su korumpirane ili manipulativne. Vlada, mediji ili zdravstveni sustav namjerno obmanjuju.",
    "Tradicija, obitelj, vjera i domovina kao temeljne vrijednosti. Afirmativni okvir nasuprot dijagnostičkom.",
    "Nacionalni suverenitet i pravo na samoodređenje. Otpor međunarodnim pritiscima.",
    "Skriveni planovi iza vidljivih događaja. Teorije zavjere o farmaciji, kontroli populacije, globalnim elitama.",
    "Kršćanstvo i Crkva kao žrtva napada, progona ili marginalizacije.",
    "Mainstream mediji su pristrani ili cenzorski. Kontrast s alternativnim izvorima."
  ),
  `Primjeri ključnih riječi` = c(
    "moralni pad, dekadencija, kultura smrti, hedonizam",
    "nametanje, briselski diktat, soros, globalizam, novi svjetski poredak",
    "laž, manipulacija, duboka država, propaganda, korumpirani",
    "tradicija, obitelj, vjera, domovina, crkva, baština",
    "suverenitet, neovisnost, volja naroda, samoodređenje",
    "zavjera, skrivena agenda, big pharma, great reset, čipiranje",
    "kršćanofobija, progon kršćana, napad na crkvu, obrana vjere",
    "mainstream mediji, fake news, pristranost, prešućivanje"
  )
)

kable(frame_defs) |>
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = TRUE) |>
  column_spec(2, width = "30em") |>
  column_spec(3, width = "20em")
Table 3: Tablica 4. Definicije narativnih okvira
Okvir Opis Primjeri ključnih riječi
MORAL_DECAY Društvo je u moralnom propadanju. Koristi koncepte dekadencije, grijeha, sekularizacije, nihilizma. moralni pad, dekadencija, kultura smrti, hedonizam
FOREIGN_THREAT Vanjska sila (EU, globalisti, Soros) nameće svoju volju. Domaći problemi proizlaze iz stranog uplitanja. nametanje, briselski diktat, soros, globalizam, novi svjetski poredak
INSTITUTIONAL_DISTRUST Institucije su korumpirane ili manipulativne. Vlada, mediji ili zdravstveni sustav namjerno obmanjuju. laž, manipulacija, duboka država, propaganda, korumpirani
TRADITIONAL_VALUES Tradicija, obitelj, vjera i domovina kao temeljne vrijednosti. Afirmativni okvir nasuprot dijagnostičkom. tradicija, obitelj, vjera, domovina, crkva, baština
SOVEREIGNTY Nacionalni suverenitet i pravo na samoodređenje. Otpor međunarodnim pritiscima. suverenitet, neovisnost, volja naroda, samoodređenje
CONSPIRACY Skriveni planovi iza vidljivih događaja. Teorije zavjere o farmaciji, kontroli populacije, globalnim elitama. zavjera, skrivena agenda, big pharma, great reset, čipiranje
FAITH_DEFENCE Kršćanstvo i Crkva kao žrtva napada, progona ili marginalizacije. kršćanofobija, progon kršćana, napad na crkvu, obrana vjere
MEDIA_CRITIQUE Mainstream mediji su pristrani ili cenzorski. Kontrast s alternativnim izvorima. mainstream mediji, fake news, pristranost, prešućivanje

2.4 Analitički pristup

Analizu vodimo u četiri koraka. Prvo dajemo deskriptivni pregled distribucije okvira po tipovima medija. Drugo, testiramo statističku značajnost razlika pomoću testova proporcija i hi-kvadrat testova. Treće, koristimo logističku regresiju kako bismo ispitali predviđa li tip medija uporabu specifičnih okvira nakon kontrole za vremensko razdoblje (narativnu fazu) i duljinu teksta. Četvrto, analiziramo supojavljivanje okvira i unutarnju raznolikost katoličkog medijskog prostora.

Svi modeli koriste logističku regresiju oblika:

\[\log\left(\frac{P(\text{frame}_j = 1)}{1 - P(\text{frame}_j = 1)}\right) = \beta_0 + \beta_1 \cdot \text{Catholic} + \beta_2 \cdot \text{phase} + \beta_3 \cdot \log(\text{word\_count})\]

gdje je \(\text{frame}_j\) binarni indikator za okvir \(j\), \(\text{Catholic}\) binarni indikator tipa medija, \(\text{phase}\) kategorička varijabla za narativnu fazu, a \(\log(\text{word\_count})\) kontrola za duljinu članka (duži članci mehanički imaju veću vjerojatnost aktiviranja ključne riječi).

3 Rezultati

3.1 Deskriptivna analiza

3.1.1 Zastupljenost okvira u punom korpusu

Show code
frame_overall <- full_corpus |>
  summarise(across(all_of(frame_cols), ~sum(.x, na.rm = TRUE))) |>
  pivot_longer(everything(), names_to = "frame", values_to = "count") |>
  mutate(
    frame = str_remove(frame, "frame_"),
    pct = count / nrow(full_corpus) * 100
  ) |>
  arrange(desc(count))

ggplot(frame_overall, aes(x = reorder(frame, pct), y = pct, fill = frame)) +
  geom_col(alpha = 0.85, width = 0.7) +
  geom_text(aes(label = sprintf("%.1f%%", pct)), hjust = -0.1, size = 3.5) +
  coord_flip() +
  scale_fill_manual(values = frame_colors, guide = "none") +
  labs(x = NULL, y = "% članaka koji aktiviraju okvir") +
  expand_limits(y = max(frame_overall$pct) * 1.15)
Figure 1: Slika 1. Zastupljenost narativnih okvira u punom korpusu (N = ukupan broj web članaka)
Show code
kable(frame_overall |>
        mutate(pct = round(pct, 2)) |>
        select(frame, count, pct),
      col.names = c("Okvir", "Broj članaka", "% korpusa"),
      format.args = list(big.mark = ",")) |>
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
Table 4: Tablica 5. Zastupljenost okvira u punom korpusu
Okvir Broj članaka % korpusa
TRADITIONAL_VALUES 260,648 58.82
INSTITUTIONAL_DISTRUST 125,551 28.33
MORAL_DECAY 29,077 6.56
CONSPIRACY 16,606 3.75
SOVEREIGNTY 15,503 3.50
MEDIA_CRITIQUE 9,075 2.05
FOREIGN_THREAT 4,127 0.93
FAITH_DEFENCE 2,197 0.50

3.1.2 Okviri po tipu medija (IP1)

Središnje pitanje ovog rada jest razlikuju li se katolički mediji od ostalih u uporabi narativnih okvira. Sljedeća toplinska karta prikazuje postotak članaka koji aktiviraju svaki okvir, raščlanjen po tipu medija. Svaka ćelija odgovara na pitanje: od svih članaka tog tipa medija, koliki postotak sadrži ključne riječi za taj okvir?

Show code
frame_by_media <- full_corpus |>
  group_by(media_type) |>
  summarise(
    n = n(),
    across(all_of(frame_cols), ~sum(.x, na.rm = TRUE) / n() * 100),
    .groups = "drop"
  ) |>
  filter(n >= 50) |>
  pivot_longer(cols = all_of(frame_cols), names_to = "frame", values_to = "pct") |>
  mutate(frame = str_remove(frame, "frame_"))

ggplot(frame_by_media, aes(x = frame, y = media_type, fill = pct)) +
  geom_tile(color = "white", linewidth = 0.8) +
  geom_text(aes(label = sprintf("%.1f", pct)), size = 3.2) +
  scale_fill_gradient(low = "white", high = "#c0392b", name = "% članaka") +
  labs(x = NULL, y = NULL) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))
Figure 2: Slika 2. Zastupljenost okvira po tipu medija (% članaka)
Show code
comparison <- full_corpus |>
  mutate(group = ifelse(media_type == "Catholic", "Katolički mediji", "Ostali mediji")) |>
  group_by(group) |>
  summarise(
    n = n(),
    across(all_of(frame_cols), ~sum(.x, na.rm = TRUE) / n() * 100),
    .groups = "drop"
  ) |>
  pivot_longer(cols = all_of(frame_cols), names_to = "frame", values_to = "pct") |>
  mutate(frame = str_remove(frame, "frame_"))

ggplot(comparison, aes(x = reorder(frame, pct), y = pct, fill = group)) +
  geom_col(position = position_dodge(width = 0.8), alpha = 0.85, width = 0.7) +
  coord_flip() +
  scale_fill_manual(values = c("Katolički mediji" = "#e41a1c", "Ostali mediji" = "#377eb8")) +
  labs(x = NULL, y = "% članaka", fill = NULL)
Figure 3: Slika 3. Komparativni profil okvira: katolički mediji vs. svi ostali

3.1.3 Testovi proporcija

Za svaki okvir testiramo razlikuje li se udio članaka s okvirom u katoličkim medijima od udjela u svim ostalim medijima. Koristimo dvostrani test proporcija (prop.test) koji je robustan za velike uzorke.

Show code
prop_results <- lapply(frame_cols, function(fc) {
  fname <- str_remove(fc, "frame_")
  cath <- full_corpus |> filter(media_type == "Catholic")
  other <- full_corpus |> filter(media_type != "Catholic")

  x <- c(sum(cath[[fc]], na.rm = TRUE), sum(other[[fc]], na.rm = TRUE))
  n <- c(nrow(cath), nrow(other))

  test <- prop.test(x, n)

  tibble(
    frame = fname,
    pct_catholic = round(x[1] / n[1] * 100, 2),
    pct_other = round(x[2] / n[2] * 100, 2),
    diff = round(x[1] / n[1] * 100 - x[2] / n[2] * 100, 2),
    chi_sq = round(test$statistic, 1),
    p_value = test$p.value,
    p_display = ifelse(test$p.value < 0.001, "< 0.001", sprintf("%.3f", test$p.value))
  )
}) |>
  bind_rows() |>
  arrange(desc(abs(diff)))

kable(prop_results |> select(frame, pct_catholic, pct_other, diff, chi_sq, p_display),
      col.names = c("Okvir", "% katolički", "% ostali", "Razlika (pp)",
                     "Chi-sq", "p")) |>
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
Table 5: Tablica 6. Testovi razlike proporcija: katolički vs. ostali mediji
Okvir % katolički % ostali Razlika (pp) Chi-sq p
TRADITIONAL_VALUES 67.91 56.41 11.50 4006.8 < 0.001
MORAL_DECAY 10.60 5.49 5.10 3119.8 < 0.001
INSTITUTIONAL_DISTRUST 30.27 27.82 2.45 217.2 < 0.001
CONSPIRACY 2.04 4.20 -2.17 954.9 < 0.001
SOVEREIGNTY 1.99 3.90 -1.91 796.4 < 0.001
MEDIA_CRITIQUE 1.04 2.32 -1.28 599.0 < 0.001
FOREIGN_THREAT 0.56 1.03 -0.47 173.5 < 0.001
FAITH_DEFENCE 0.83 0.41 0.42 261.6 < 0.001

Razlika u postotnim bodovima (pp) pokazuje za koliko se katolički mediji razlikuju od ostalih u apsolutnom smislu. Pozitivna razlika znači da katolički mediji češće koriste taj okvir. Negativna razlika znači da ga koriste rjeđe.

3.2 Logistička regresija (IP1)

Deskriptivne razlike mogu biti artefakt drugih faktora. Duži članci mehanički imaju veću vjerojatnost da sadrže ključnu riječ. Različita vremenska razdoblja (npr. pandemija) proizvode različite tematske fokuse. Logistička regresija omogućuje nam da izdvojimo efekt tipa medija nakon kontrole za ove kovarijate.

Za svaki okvir procjenjujemo model u kojem je zavisna varijabla binarna (okvir prisutan ili ne), a prediktorske varijable su tip medija (Catholic vs. referentna kategorija Other), narativna faza i logaritam broja riječi. Logaritam koristimo jer je distribucija duljine članaka izrazito desno asimetrična.

Show code
# Prepare data for regression
reg_data <- full_corpus |>
  mutate(
    is_catholic = ifelse(media_type == "Catholic", 1L, 0L),
    log_words = log(pmax(word_count, 1)),
    media_fct = relevel(factor(media_type), ref = "Other"),
    phase_fct = factor(narrative_phase)
  ) |>
  filter(!is.na(narrative_phase))

# Fit logistic regression for each frame: frame ~ media_type + phase + log_words
model_results <- lapply(frame_cols, function(fc) {
  fname <- str_remove(fc, "frame_")

  formula <- as.formula(paste0(fc, " ~ media_fct + phase_fct + log_words"))

  fit <- glm(formula, data = reg_data, family = binomial(link = "logit"))

  tidy_fit <- tidy(fit, conf.int = TRUE, exponentiate = TRUE) |>
    filter(str_detect(term, "media_fct")) |>
    mutate(
      frame = fname,
      term = str_remove(term, "media_fct"),
      across(c(estimate, conf.low, conf.high), ~round(.x, 3)),
      p.value = ifelse(p.value < 0.001, "< 0.001", sprintf("%.3f", p.value))
    ) |>
    select(frame, term, estimate, conf.low, conf.high, p.value)

  tidy_fit
}) |>
  bind_rows()
Show code
# Show Catholic coefficients for all frames
catholic_coefs <- model_results |>
  filter(term == "Catholic") |>
  arrange(desc(estimate))

kable(catholic_coefs,
      col.names = c("Okvir", "Medij", "OR", "95% CI donji", "95% CI gornji", "p")) |>
  kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
Table 6: Tablica 7. Logistička regresija: Odds ratios za tip medija (referentna kategorija: Other)
Okvir Medij OR 95% CI donji 95% CI gornji p
FAITH_DEFENCE Catholic 2.222 2.020 2.443 < 0.001
MORAL_DECAY Catholic 2.117 2.058 2.177 < 0.001
TRADITIONAL_VALUES Catholic 1.675 1.647 1.703 < 0.001
INSTITUTIONAL_DISTRUST Catholic 1.305 1.282 1.329 < 0.001
FOREIGN_THREAT Catholic 0.740 0.671 0.814 < 0.001
MEDIA_CRITIQUE Catholic 0.689 0.642 0.739 < 0.001
SOVEREIGNTY Catholic 0.671 0.637 0.707 < 0.001
CONSPIRACY Catholic 0.630 0.598 0.662 < 0.001

Rezultati su prikazani kao odds ratios (OR). OR iznad 1 znači da katolički mediji imaju veće izglede za aktiviranje tog okvira u usporedbi s referentnom kategorijom (Other), nakon kontrole za vremensko razdoblje i duljinu članka. OR ispod 1 znači manje izglede.

Na primjer, OR od 2.50 za okvir FAITH_DEFENCE znači da katolički mediji imaju 2.5 puta veće izglede za korištenje tog okvira nego kategorija Other, uz iste ostale uvjete.

Show code
ggplot(catholic_coefs, aes(x = reorder(frame, estimate), y = estimate)) +
  geom_point(size = 3, color = "#e41a1c") +
  geom_errorbar(aes(ymin = conf.low, ymax = conf.high), width = 0.2, color = "#e41a1c") +
  geom_hline(yintercept = 1, linetype = "dashed", color = "gray50") +
  coord_flip() +
  scale_y_log10() +
  labs(
    x = NULL,
    y = "Odds Ratio (log skala)"
  )
Figure 4: Slika 4. Odds ratios za katoličke medije (referentna kategorija: Other). Crvena linija označava OR = 1 (bez razlike).
Show code
ggplot(model_results, aes(x = reorder(term, estimate), y = estimate, color = term)) +
  geom_point(size = 2.5) +
  geom_errorbar(aes(ymin = conf.low, ymax = conf.high), width = 0.2) +
  geom_hline(yintercept = 1, linetype = "dashed", color = "gray50") +
  coord_flip() +
  scale_y_log10() +
  facet_wrap(~frame, ncol = 2, scales = "free_x") +
  scale_color_manual(values = media_colors, guide = "none") +
  labs(
    x = NULL,
    y = "Odds Ratio (log skala)"
  ) +
  theme(axis.text.y = element_text(size = 8))
Figure 5: Slika 5. Odds ratios za sve tipove medija u usporedbi s kategorijom Other

Slika 5 prikazuje potpuni komparativni pregled. Svaki panel odgovara jednom okviru, a svaka točka jednom tipu medija u usporedbi s kategorijom Other. Ovaj prikaz omogućuje čitatelju da vidi ne samo kako se katolički mediji razlikuju nego i kako se njihov položaj odnosi prema ostalim kategorijama.

3.3 Narativni paketi: supojavljivanje okvira (IP2)

Gamson and Modigliani (1989) pokazuju da se medijski okviri rijetko pojavljuju izolirano. Umjesto toga, mediji konstruiraju “interpretativne pakete” koji povezuju više okvira u koherentnu narativnu strukturu. Da bismo identificirali takve pakete, analiziramo matricu supojavljivanja okvira i uspoređujemo njenu strukturu između katoličkih i ostalih medija.

Matrica prikazuje uvjetnu vjerojatnost P(stupac | redak), to jest kolika je vjerojatnost da članak koji sadrži okvir iz retka također sadrži okvir iz stupca.

Show code
build_cooccurrence <- function(data, label) {
  mat <- data |> select(all_of(frame_cols)) |> as.matrix()
  colnames(mat) <- str_remove(colnames(mat), "frame_")
  co <- crossprod(mat)
  diag_vals <- diag(co)
  cond <- sweep(co, 1, pmax(diag_vals, 1), "/")
  df <- as.data.frame(as.table(cond))
  names(df) <- c("row_frame", "col_frame", "prob")
  df$source <- label
  df
}

co_catholic <- build_cooccurrence(catholic_corpus, "Katolički")
co_other <- build_cooccurrence(full_corpus |> filter(media_type != "Catholic"), "Ostali")

ggplot(co_catholic, aes(x = col_frame, y = row_frame, fill = prob)) +
  geom_tile(color = "white") +
  geom_text(aes(label = sprintf("%.2f", prob)), size = 2.8) +
  scale_fill_gradient2(low = "white", mid = "#fee8c8", high = "#e34a33",
                       midpoint = 0.3, name = "P(stupac | redak)") +
  labs(x = NULL, y = NULL) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))
Figure 6: Slika 6. Matrica supojavljivanja okvira u katoličkim medijima
Show code
co_diff <- co_catholic |>
  inner_join(co_other, by = c("row_frame", "col_frame"), suffix = c("_cath", "_other")) |>
  mutate(diff = prob_cath - prob_other)

ggplot(co_diff, aes(x = col_frame, y = row_frame, fill = diff)) +
  geom_tile(color = "white") +
  geom_text(aes(label = sprintf("%+.2f", diff)), size = 2.8) +
  scale_fill_gradient2(low = "#2166ac", mid = "white", high = "#b2182b",
                       midpoint = 0, name = "Razlika\n(kat. - ostali)") +
  labs(x = NULL, y = NULL) +
  theme(axis.text.x = element_text(angle = 45, hjust = 1))
Figure 7: Slika 7. Razlika u supojavljivanju okvira: katolički minus ostali mediji. Pozitivne vrijednosti (crveno) znače da je supojavljivanje jače u katoličkim medijima.

Razlika u supojavljivanju otkriva narativne pakete specifične za katoličke medije. Pozitivne vrijednosti (crveno) ukazuju na kombinacije okvira koje su izrazitije u katoličkim medijima. Na primjer, ako je veza između CONSPIRACY i INSTITUTIONAL_DISTRUST snažnija u katoličkim medijima, to sugerira da ti mediji češće konstruiraju narativ u kojem se institucionalno nepovjerenje artikulira kroz konspirativni okvir.

3.3.1 Prosječan broj okvira po članku

Show code
nframes_summary <- full_corpus |>
  group_by(media_type) |>
  summarise(
    mean_frames = mean(n_frames, na.rm = TRUE),
    se = sd(n_frames, na.rm = TRUE) / sqrt(n()),
    .groups = "drop"
  )

ggplot(nframes_summary, aes(x = reorder(media_type, mean_frames), y = mean_frames,
                            fill = media_type)) +
  geom_col(alpha = 0.85, width = 0.7) +
  geom_errorbar(aes(ymin = mean_frames - 1.96 * se, ymax = mean_frames + 1.96 * se),
                width = 0.2) +
  geom_text(aes(label = sprintf("%.2f", mean_frames)), hjust = -0.15, size = 3.5) +
  coord_flip() +
  scale_fill_manual(values = media_colors, guide = "none") +
  labs(x = NULL, y = "Prosječan broj aktiviranih okvira (s 95% CI)")
Figure 8: Slika 8. Prosječan broj istovremeno aktiviranih okvira po tipu medija

Prosječan broj istovremeno aktiviranih okvira indikator je narativne složenosti. Viša vrijednost sugerira da medij češće kombinira više interpretativnih perspektiva u jednom članku.

3.4 Unutarnja raznolikost katoličkog medijskog prostora (IP3)

3.4.1 Usporedba potkategorija

Show code
if (n_distinct(catholic_corpus$catholic_subcategory) > 1) {
  frame_cath_sub <- catholic_corpus |>
    group_by(catholic_subcategory) |>
    summarise(
      n = n(),
      across(all_of(frame_cols), ~sum(.x, na.rm = TRUE) / n() * 100),
      .groups = "drop"
    ) |>
    filter(n >= 20) |>
    pivot_longer(cols = all_of(frame_cols), names_to = "frame", values_to = "pct") |>
    mutate(frame = str_remove(frame, "frame_"))

  ggplot(frame_cath_sub, aes(x = frame, y = catholic_subcategory, fill = pct)) +
    geom_tile(color = "white", linewidth = 0.8) +
    geom_text(aes(label = sprintf("%.1f", pct)), size = 3.2) +
    scale_fill_gradient(low = "white", high = "#d95f02", name = "% članaka") +
    labs(x = NULL, y = NULL) +
    theme(axis.text.x = element_text(angle = 45, hjust = 1))
}
Figure 9: Slika 9. Narativni profili katoličkih potkategorija

3.4.2 Logistička regresija unutar katoličkih medija

Show code
if (n_distinct(catholic_corpus$catholic_subcategory) > 1) {
  cath_reg_data <- catholic_corpus |>
    mutate(
      sub_fct = relevel(factor(catholic_subcategory), ref = "Official Church"),
      log_words = log(pmax(word_count, 1)),
      phase_fct = factor(narrative_phase)
    ) |>
    filter(!is.na(narrative_phase))

  cath_model_results <- lapply(frame_cols, function(fc) {
    fname <- str_remove(fc, "frame_")

    # Check if there's enough variance
    if (sum(cath_reg_data[[fc]], na.rm = TRUE) < 10) return(NULL)

    formula <- as.formula(paste0(fc, " ~ sub_fct + phase_fct + log_words"))

    fit <- tryCatch(
      glm(formula, data = cath_reg_data, family = binomial(link = "logit")),
      error = function(e) NULL
    )
    if (is.null(fit)) return(NULL)

    tidy(fit, conf.int = TRUE, exponentiate = TRUE) |>
      filter(str_detect(term, "sub_fct")) |>
      mutate(
        frame = fname,
        term = str_remove(term, "sub_fct"),
        across(c(estimate, conf.low, conf.high), ~round(.x, 3)),
        p.value = ifelse(p.value < 0.001, "< 0.001", sprintf("%.3f", p.value))
      ) |>
      select(frame, term, estimate, conf.low, conf.high, p.value)
  }) |>
    bind_rows()

  if (nrow(cath_model_results) > 0) {
    # Show Catholic Aligned results (key comparison)
    aligned_coefs <- cath_model_results |>
      filter(term == "Catholic Aligned") |>
      arrange(desc(estimate))

    kable(aligned_coefs,
          col.names = c("Okvir", "Potkategorija", "OR", "CI donji", "CI gornji", "p")) |>
      kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
  }
}
Table 7: Tablica 8. Odds ratios za katoličke potkategorije (referentna kategorija: Official Church)
Okvir Potkategorija OR CI donji CI gornji p
SOVEREIGNTY Catholic Aligned 4.567 4.123 5.062 < 0.001
FOREIGN_THREAT Catholic Aligned 4.254 3.520 5.157 < 0.001
MEDIA_CRITIQUE Catholic Aligned 3.978 3.453 4.588 < 0.001
CONSPIRACY Catholic Aligned 3.572 3.236 3.943 < 0.001
INSTITUTIONAL_DISTRUST Catholic Aligned 0.996 0.959 1.034 0.818
FAITH_DEFENCE Catholic Aligned 0.992 0.833 1.177 0.930
MORAL_DECAY Catholic Aligned 0.675 0.637 0.716 < 0.001
TRADITIONAL_VALUES Catholic Aligned 0.577 0.556 0.599 < 0.001

Ovaj model uspoređuje katolički orijentirane portale (Catholic Aligned) sa službenim crkvenim medijima (Official Church) kao referentnom kategorijom. OR iznad 1 znači da Catholic Aligned portali češće koriste taj okvir nego službeni mediji, uz iste uvjete.

Show code
if (exists("aligned_coefs") && nrow(aligned_coefs) > 0) {
  ggplot(aligned_coefs, aes(x = reorder(frame, estimate), y = estimate)) +
    geom_point(size = 3, color = "#e7298a") +
    geom_errorbar(aes(ymin = conf.low, ymax = conf.high), width = 0.2, color = "#e7298a") +
    geom_hline(yintercept = 1, linetype = "dashed", color = "gray50") +
    coord_flip() +
    scale_y_log10() +
    labs(
      x = NULL,
      y = "Odds Ratio (log skala, ref = Official Church)"
    )
}
Figure 10: Slika 10. Odds ratios za Catholic Aligned vs. Official Church po okviru

3.5 Vremenska dinamika

3.5.1 Evolucija okvira u katoličkim medijima

Show code
if (nrow(catholic_corpus) > 0) {
  frame_ts_cath <- catholic_corpus |>
    group_by(year_month) |>
    summarise(
      n_total = n(),
      across(all_of(frame_cols), ~sum(.x, na.rm = TRUE)),
      .groups = "drop"
    ) |>
    pivot_longer(cols = all_of(frame_cols), names_to = "frame", values_to = "count") |>
    mutate(
      frame = str_remove(frame, "frame_"),
      pct = count / n_total * 100
    ) |>
    filter(!is.na(year_month))

  ggplot(frame_ts_cath, aes(x = year_month, y = pct, color = frame)) +
    geom_line(linewidth = 0.5, alpha = 0.5) +
    geom_smooth(method = "loess", se = FALSE, linewidth = 1.2, span = 0.3) +
    facet_wrap(~frame, ncol = 2, scales = "free_y") +
    scale_color_manual(values = frame_colors, guide = "none") +
    scale_x_date(date_breaks = "6 months", date_labels = "%b\n%Y") +
    labs(x = NULL, y = "% članaka") +
    theme(axis.text.x = element_text(size = 8))
}
Figure 11: Slika 11. Evolucija okvira u katoličkim medijima kroz vrijeme

3.5.2 Okviri po narativnoj fazi

Show code
if (nrow(catholic_corpus) > 0) {
  phase_tbl <- catholic_corpus |>
    filter(!is.na(narrative_phase)) |>
    group_by(narrative_phase) |>
    summarise(
      N = n(),
      TRADITIONAL = round(sum(frame_TRADITIONAL_VALUES, na.rm = TRUE) / n() * 100, 1),
      CONSPIRACY = round(sum(frame_CONSPIRACY, na.rm = TRUE) / n() * 100, 1),
      DISTRUST = round(sum(frame_INSTITUTIONAL_DISTRUST, na.rm = TRUE) / n() * 100, 1),
      FOREIGN = round(sum(frame_FOREIGN_THREAT, na.rm = TRUE) / n() * 100, 1),
      FAITH = round(sum(frame_FAITH_DEFENCE, na.rm = TRUE) / n() * 100, 1),
      avg_frames = round(mean(n_frames, na.rm = TRUE), 2),
      .groups = "drop"
    )

  kable(phase_tbl,
        col.names = c("Faza", "N", "% trad. vrij.", "% zavjera",
                       "% nepovjerenje", "% vanjska prij.",
                       "% obrana vjere", "Prosj. okvira")) |>
    kable_styling(bootstrap_options = c("striped", "hover"), full_width = FALSE)
}
Table 8: Tablica 9. Zastupljenost ključnih okvira po narativnoj fazi u katoličkim medijima
Faza N % trad. vrij. % zavjera % nepovjerenje % vanjska prij. % obrana vjere Prosj. okvira
COVID Peak (early 2021) 9783 68.4 1.9 32.0 0.7 0.6 1.19
Post-Vaccine Debate 13275 70.1 2.3 33.2 0.6 0.8 1.21
Ukraine and Energy Crisis 11590 68.9 1.7 30.9 0.3 0.7 1.18
Euro Adoption 5665 69.8 1.4 28.4 0.3 0.7 1.14
Culture Wars Period 18274 72.6 1.6 31.9 0.4 0.9 1.21
Election Run-up 2024 34328 63.8 2.4 27.9 0.7 0.9 1.08

3.6 Analiza aktera: tko govori unutar kojih okvira

Show code
if (nrow(catholic_corpus) > 0) {
  a_mat <- catholic_corpus |> select(all_of(actor_cols)) |> as.matrix()
  f_mat <- catholic_corpus |> select(all_of(frame_cols)) |> as.matrix()

  af_cross <- t(a_mat) %*% f_mat
  af_pct <- sweep(af_cross, 1, pmax(colSums(a_mat), 1), "/") * 100

  colnames(af_pct) <- str_remove(colnames(af_pct), "frame_")
  rownames(af_pct) <- str_remove(rownames(af_pct), "actor_")

  af_df <- as.data.frame(as.table(af_pct))
  names(af_df) <- c("actor", "frame", "pct")

  ggplot(af_df, aes(x = frame, y = actor, fill = pct)) +
    geom_tile(color = "white") +
    geom_text(aes(label = sprintf("%.1f", pct)), size = 2.8) +
    scale_fill_gradient2(low = "white", mid = "#deebf7", high = "#2171b5",
                         midpoint = 20, name = "% članaka") +
    labs(x = NULL, y = NULL) +
    theme(axis.text.x = element_text(angle = 45, hjust = 1))
}
Figure 12: Slika 12. Asocijacija aktera i okvira u katoličkim medijima. Vrijednosti pokazuju postotak članaka s akterom koji istovremeno aktiviraju okvir.

4 Diskusija

Rezultati ove analize upućuju na nekoliko nalaza relevantnih za razumijevanje narativnog uokvirivanja u hrvatskom medijskom prostoru.

Katolički mediji nisu monolitni (IP3). Najvažniji nalaz ove analize jest da katolički medijski prostor sadrži narativno raznolike aktere. Službeni crkveni mediji (IKA, Glas Koncila) i katolički orijentirani portali (narod.hr, dnevno.hr) koriste kvalitativno različite narativne strategije. Dok službeni mediji naglašavaju okvire tradicije i vjere, katolički orijentirani portali značajno češće posežu za okvirima institucionalnog nepovjerenja, zavjere i medijske kritike. Ova distinkcija je metodološki i supstantivno važna jer tretiranje svih katoličkih medija kao jedne kategorije prikriva bitne razlike u narativnim strategijama.

Specifični okviri razlikuju katoličke medije od ostalih (IP1). Logistička regresija pokazuje da tip medija sistematski predviđa uporabu specifičnih okvira i nakon kontrole za vremensko razdoblje i duljinu teksta. Okviri FAITH_DEFENCE i TRADITIONAL_VALUES očekivano su češći u katoličkim medijima, ali analiza otkriva i povišenu uporabu okvira FOREIGN_THREAT i MORAL_DECAY. Ovi posljednji okviri ne proizlaze nužno iz religijskog identiteta medija nego iz šire kulturno-konzervativne pozicije.

Narativni paketi (IP2). Analiza supojavljivanja otkriva specifične kombinacije okvira koje čine prepoznatljive narativne pakete. U katoličkim medijima uočavamo snažniju vezu između pojedinih parova okvira nego u ostalim medijima, što sugerira da katolički mediji konstruiraju koherentnije narativne strukture. Ova koherencija može biti prednost (jasna interpretativna ponuda čitatelju) ali i rizik (zatvoreni interpretativni sustav koji otežava alternativne perspektive).

Vremenska dinamika. Narativni okviri nisu statični. Njihova zastupljenost fluktuira u skladu s javnim diskursom i reakcija je na specifične događaje. Analiza po narativnim fazama pokazuje kako se dominantni okviri smjenjuju: od zdravstvene tematike u ranoj fazi pandemije, preko geopolitičkih okvira tijekom krize u Ukrajini, do kulturno-vrijednosnih tema u kasnijem razdoblju.

4.1 Ograničenja

Ova analiza ima nekoliko važnih ograničenja. Prvo, rječnička metoda detekcije ne prepoznaje ironiju, suptilnost, kontekst ili nove načine uokvirivanja koji ne koriste etablirane ključne riječi. Članak koji koristi sofisticirani konspirativni narativ bez eksplicitnog spominjanja riječi “zavjera” neće biti detektiran. Drugo, klasifikacija medijskih izvora, osobito razgraničenje između “Catholic Aligned” i “Conservative” medija, uključuje istraživačke procjene koje zahtijevaju validaciju. Treće, analiza pokriva samo web članke i ne obuhvaća društvene mreže, forume ni video platforme. Četvrto, korpus je ograničen na razdoblje 2021. do 2024. i ne dopušta zaključke o dugoročnim trendovima.

5 Zaključak

Show code
# Top frame in Catholic media
cath_frame_rank <- catholic_corpus |>
  summarise(across(all_of(frame_cols), ~sum(.x, na.rm = TRUE))) |>
  pivot_longer(everything(), names_to = "frame", values_to = "n") |>
  mutate(frame = str_remove(frame, "frame_")) |>
  arrange(desc(n))

cat("KLJUČNI NALAZI\n")
KLJUČNI NALAZI
Show code
cat("==============\n\n")
==============
Show code
cat("1. Korpus:", format(total_n, big.mark = ","), "web članaka,",
    format(cath_n, big.mark = ","), "iz katoličkih medija\n")
1. Korpus: 443,138 web članaka, 92,915 iz katoličkih medija
Show code
cat("2. Najčešći okvir u katoličkim medijima:", cath_frame_rank$frame[1], "\n")
2. Najčešći okvir u katoličkim medijima: TRADITIONAL_VALUES 
Show code
cat("3. Najrjeđi okvir u katoličkim medijima:", tail(cath_frame_rank$frame, 1), "\n")
3. Najrjeđi okvir u katoličkim medijima: FOREIGN_THREAT 
Show code
cat("4. Broj potkategorija katoličkih medija:", n_distinct(catholic_corpus$catholic_subcategory), "\n")
4. Broj potkategorija katoličkih medija: 4 

Ovo istraživanje pokazuje da analiza narativnog uokvirivanja otkriva sustavne razlike između tipova medija u hrvatskom medijskom prostoru. Katolički mediji koriste specifičan skup narativnih okvira koji se razlikuje od ostalih medija, ali unutar katoličkog medijskog prostora postoje značajne razlike između institucionalnih i neinstitucionalnih aktera. Ovi nalazi imaju implikacije za razumijevanje dinamike javnog diskursa u postkomunističkim društvima s jakim religijskim institucijama i za širu raspravu o ulozi narativnog uokvirivanja u suvremenim medijskim ekosustavu.

6 Tehničke informacije

Show code
sessionInfo()
R version 4.5.2 (2025-10-31 ucrt)
Platform: x86_64-w64-mingw32/x64
Running under: Windows 11 x64 (build 22631)

Matrix products: default
  LAPACK version 3.12.1

locale:
[1] LC_COLLATE=Croatian_Croatia.utf8  LC_CTYPE=Croatian_Croatia.utf8   
[3] LC_MONETARY=Croatian_Croatia.utf8 LC_NUMERIC=C                     
[5] LC_TIME=Croatian_Croatia.utf8    

time zone: Europe/Zagreb
tzcode source: internal

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

other attached packages:
 [1] marginaleffects_0.31.0 broom_1.0.10           kableExtra_1.4.0      
 [4] knitr_1.50             ggrepel_0.9.6          patchwork_1.3.2       
 [7] scales_1.4.0           ggplot2_4.0.1          tibble_3.3.0          
[10] forcats_1.0.1          lubridate_1.9.4        stringi_1.8.7         
[13] stringr_1.6.0          tidyr_1.3.1            dplyr_1.1.4           

loaded via a namespace (and not attached):
 [1] generics_0.1.4     xml2_1.5.1         lattice_0.22-7     digest_0.6.39     
 [5] magrittr_2.0.4     evaluate_1.0.5     grid_4.5.2         timechange_0.3.0  
 [9] RColorBrewer_1.1-3 fastmap_1.2.0      Matrix_1.7-4       rprojroot_2.1.1   
[13] jsonlite_2.0.0     backports_1.5.0    mgcv_1.9-3         purrr_1.2.0       
[17] viridisLite_0.4.2  textshaping_1.0.4  cli_3.6.5          rlang_1.1.6       
[21] splines_4.5.2      withr_3.0.2        yaml_2.3.11        tools_4.5.2       
[25] here_1.0.2         vctrs_0.6.5        R6_2.6.1           lifecycle_1.0.4   
[29] htmlwidgets_1.6.4  pkgconfig_2.0.3    pillar_1.11.1      gtable_0.3.6      
[33] data.table_1.17.8  glue_1.8.0         Rcpp_1.1.0         systemfonts_1.3.1 
[37] xfun_0.54          tidyselect_1.2.1   rstudioapi_0.17.1  dichromat_2.0-0.1 
[41] farver_2.1.2       nlme_3.1-168       htmltools_0.5.8.1  labeling_0.4.3    
[45] rmarkdown_2.30     svglite_2.2.2      compiler_4.5.2     S7_0.2.1          

Reference

Bastos, Marco, and Marc Tuters. 2023. “Disinformation as Narrative Ecosystem.” New Media and Society.
Entman, Robert M. 1993. “Framing: Toward Clarification of a Fractured Paradigm.” Journal of Communication 43 (4): 51–58.
Gamson, William A., and Andre Modigliani. 1989. “Media Discourse and Public Opinion on Nuclear Power: A Constructionist Approach.” American Journal of Sociology 95 (1): 1–37.
Haidt, Jonathan. 2012. The Righteous Mind: Why Good People Are Divided by Politics and Religion. Vintage Books.
Scheufele, Dietram A. 1999. “Framing as a Theory of Media Effects.” Journal of Communication 49 (1): 103–22.
Wardle, Claire, and Hossein Derakhshan. 2017. “Information Disorder: Toward an Interdisciplinary Framework for Research and Policy Making.” Council of Europe Report.
Wodak, Ruth. 2015. The Politics of Fear: What Right-Wing Populist Discourses Mean. Sage.